const puppeteer = require('puppeteer');

(async () => {
  // 启动浏览器
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.setViewport({
    width: 1920, // 设置视窗宽度
    height: 1080, // 设置视窗高度
    deviceScaleFactor: 2 // 设置设备像素比，增加这个值可以提高截图的分辨率
  });
  // 访问URL
  const url = 'http://192.168.5.76/display/unity.html'; // 替换为你的Vue应用的URL
  await page.goto(url, { waitUntil: 'networkidle2' }); // 等待页面加载完成

  // 定位到特定元素
  const elementSelector = '.top > p'; // 替换为你要截图的元素的CSS选择器
  await page.waitForSelector(elementSelector); // 等待元素出现

  // 生成元素的截图
  const element = await page.$(elementSelector);
  const elementScreenshot = await element.screenshot({
    type: 'png',
    // 你可以根据需要设置其他选项，比如clip来裁剪截图区域
  });

  // 保存截图到文件（可选）
  require('fs').writeFileSync('element-screenshot.png', elementScreenshot);

  // 关闭浏览器
  await browser.close();
})();